package jp.aztech.android.kawasakiwelfare;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import android.content.Context;
import android.util.Log;

/**
 * ファイル読出し
 */
public class FileUtility {
    private static final String TAG = "FileUtility";

    /* 改行コード */
	private static final String LF = "\n";
	
	/* Context */
	private Context mContext;

	/**
	 * ===コンストラクタ ===
	 */    
	public FileUtility( Context c ) {
		mContext = c;
	}

	/**
	 * Assets ファイルを読出し、行単位の配列にする
	 */  
	public String[] readAssetsFileLines( String filename ) {
		String str = readAssetsFile( filename );
		if ( str.equals("") ) {
			return null;
		}
		return str.split(LF);
	}

	/**
	 * Assets ファイルを読出す
	 */  	
	public String readAssetsFile( String filename ) {
		
        StringBuilder sb = new StringBuilder(); 
		InputStream is = null;
		String line; 
			        
		try {
			is = mContext.getAssets().open( filename );
			BufferedReader reader = new BufferedReader( new InputStreamReader( is ) );

			// ファイルを読出し、行単位に  StringBuilder に格納する			
			while (( line = reader.readLine() ) != null ) {
			    sb.append( line + LF );   
			}

		} catch (IOException e) {
			e.printStackTrace();

		} finally {		
			// ファイルがオープン出来ていれば、クローズする
			if (is != null) {
				try {
					is.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}

		return sb.toString();
	}
}